def xor_and_hex(hex1, hex2):
    # 将十六进制字符串转换为字节对象
    bytes1 = bytes.fromhex(hex1)
    bytes2 = bytes.fromhex(hex2)

    # 确保两个字节对象长度相同
    if len(bytes1) != len(bytes2):
        raise ValueError("输入的十六进制字符串长度不一致")

    # 执行按位异或和按位与操作
    xor_result = bytes(a ^ b for a, b in zip(bytes1, bytes2))
    and_result = bytes(a & b for a, b in zip(bytes1, bytes2))

    # 将结果转换为十六进制字符串
    return xor_result.hex(), and_result.hex()
# 8bd123fc264df69db3b94d3f6ea12ce7 s
if __name__ == '__main__':
    # 示例输入
    hex_str1 = '00 11 22 38 04 49 72 05 B0 A9 04 01 64 A1 08 C5'.replace(" ",'')
    hex_str2 = 'F3 F4 D1 8E 8F 32 FF 69 DB C1 EF 2A 4F 33 75 22'.replace(" ", '')

    # 调用函数
    xor_output, and_output = xor_and_hex(hex_str1, hex_str2)

    # 输出结果
    print("异或结果:", xor_output)
    print("与操作结果:", and_output)
